// 获取科室接口返回的数据类型
import {ResponseData} from "@/api/hospital/type.ts";
export interface LoginData{
    phone:string,
    code:string,
}
//登录接口返回用户信息数据
export interface UserInfo{
    name:string,
    token:string
}
//登录接口返回的数据的ts类型
export interface UserLoginResponseData extends ResponseData{
    data:UserInfo
}
//定位微信扫码登录返回的数据的ts类型
export interface WXLogin{
    "redirectUri": string,
    "appid": string,
    "scope": string,
    "state": string
}
export interface WXLoginResponseData extends ResponseData{
    data:WXLogin
}
//就诊人信息
export interface VisitorInfo{
    id?: string,
    name: string,
    certificatesType: string,
    certificatesNo:string,
    sex:number,
    birthdate:string,
    phone:string,
    isMarry:number,
    isInsure:number,
    addressSelected:string[],
    address:string,
    contactsName:string,
    contactsCertificatesType:string,
    contactsCertificatesNo:string,
    contactsPhone:string
}
// 添加就诊人响应信息
export interface AddVisitorInfoResData extends ResponseData{
    data:object
}
//获取订单号的id返回参数的映射类
export interface SubmitOrder extends ResponseData{
    data:number
}
//订单详情数据的数据类型
export interface OrderDetailData{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {
    "orderStatusString": string
    },
    "userId": number,
    "outTradeNo": string,
    "hoscode": string,
    "hosname": string,
    "depcode": string,
    "depname": string,
    "scheduleId": string,
    "title": string,
    "reserveDate": string,
    "reserveTime": number,
    "patientId": number,
    "patientName": string,
    "patientPhone": string,
    "hosRecordId": string,
    "number": number,
    "fetchTime": string,
    "fetchAddress": string,
    "amount": number,
    "quitTime": string,
    "orderStatus": number
}
export  interface OrderResponseData  extends ResponseData{
    data:OrderDetailData
}
//获取二维码
export interface PayInfo{
    "codeUrl": string,
    "orderId": number,
    "totalFee": number,
    "resultCode": string
}
export interface QrCode extends ResponseData{
    data:PayInfo
}
//查询支付结果的ts数据类型
export interface PayResult extends ResponseData{
    data:boolean
}
//代表一个用户信息的数据类型
export interface OneUserInfo{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {},
    "openid": null,
    "nickName": null,
    "phone": string,
    "name": string,
    "certificatesType": string,
    "certificatesNo": string,
    "certificatesUrl": null,
    "authStatus": number,
    "status": number
}
export interface OneUserInfoResData extends ResponseData{
    data:OneUserInfo
}
//获取户籍证件类型
export interface CertationType{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {},
    "parentId": number,
    "name": string,
    "value": string,
    "dictCode": string,
    "hasChildren": boolean
}
export type CertationArr = CertationType[]
export interface CertationTypeResponseData extends ResponseData{
    data:CertationArr
}
//用户实名认证
export interface UserParams{
    "certificatesNo": string,
    "certificatesType": string,
    "certificatesUrl": string,
    "name": string
}
//获取所有的订单数据的ts类型
export interface AllOrder{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {
        "orderStatusString": string
    },
    "userId": number,
    "outTradeNo": string,
    "hoscode": string,
    "hosname": string,
    "depcode": string,
    "depname": string,
    "scheduleId": null,
    "title": string,
    "reserveDate": string,
    "reserveTime": number,
    "patientId": number,
    "patientName": string,
    "patientPhone": string,
    "hosRecordId": string,
    "number": number,
    "fetchTime": string,
    "fetchAddress": string,
    "amount": number,
    "quitTime": string,
    "orderStatus": number
}
export type Records = AllOrder[]
export interface AllOrderResponseData extends ResponseData{
    data: {
        records:Records
        "total": number,
        "size": number,
        "current": number,
        "orders": [],
        "hitCount": boolean,
        "searchCount": boolean,
        "pages": number
    }
}
//获取所有就诊人信息的类型
export interface User{
    "id": number,
    "createTime": string,
    "updateTime": string,
    "isDeleted": number,
    "param": {
        "certificatesTypeString": string,
        "contactsCertificatesTypeString": null,
        "cityString": null,
        "fullAddress": string,
        "districtString": null,
        "provinceString": null
    },
    "userId": number,
    "name": string,
    "certificatesType": string,
    "certificatesNo": string,
    "sex": number,
    "birthdate": string,
    "phone": string,
    "isMarry": number,
    "provinceCode": null,
    "cityCode": null,
    "districtCode": null,
    "address": string,
    "contactsName": string,
    "contactsCertificatesType": string,
    "contactsCertificatesNo": string,
    "contactsPhone": string,
    "isInsure": number,
    "cardNo": null,
    "status": string
}
export type AllUser = User[]
export interface AllUserResponseData extends ResponseData{
    data:AllUser
}
//订单状态类型
export interface Order{
    "comment": string,
    "status": number
}
export type AllOrderState = Order[]
export interface AllOrderStateResponseData extends ResponseData{
    data:AllOrderState
}
//新增与修改就诊人
export interface AddOrUpdateUser{
    id?: number,
    "name": string,
    "certificatesType": string,
    "certificatesNo": string,
    "sex": number,
    "birthdate": string,
    "phone": string,
    "isMarry": number,
    "isInsure": number,
    addressSelected:string[],
    "address": string,
    "contactsName": string,
    "contactsCertificatesType": string,
    "contactsCertificatesNo": string,
    "contactsPhone": string,
}

